package pl.vm.domain.simulator;

public interface Modifiers {

	public static final double GENERAL_ATTACK_POINTS_MODIFIER = 1;
	public static final double GENERAL_BLOCK_POINTS_MODIFIER = 1.5;
	public static final double GENERAL_SERVE_POINTS_MODIFIER = 2;
	public static final double GENERAL_STARTING_MODIFIER = 3;

	public static final double OPPOSITE_BLOCKED_ATTACKS_MODIFIER = -1;
	public static final double OPPOSITE_NR_OF_MINIMUM_ATTACKS = 10;
	public static final double OPPOSITE_EFFECTIVE_LEVEL_1 = 10;
	public static final double OPPOSITE_EFFECTIVE_LEVEL_2 = 20;
	public static final double OPPOSITE_EFFECTIVE_LEVEL_3 = 30;
	public static final double OPPOSITE_EFFECTIVE_LEVEL_4 = 40;
	public static final double OPPOSITE_EFFECTIVE_LEVEL_5 = 50;
	public static final double OPPOSITE_EFFECTIVE_LEVEL_6 = 60;
	public static final double OPPOSITE_EFFECTIVE_LEVEL_7 = 70;
	public static final double OPPOSITE_EFFECTIVE_LEVEL_8 = 80;
	public static final double OPPOSITE_EFFECTIVE_LEVEL_9 = 90;
	public static final double OPPOSITE_EFFECTIVE_LEVEL_10 = 100;
	public static final double OPPOSITE_EFFECTIVE_LEVEL_1_MODIFIER = -8;
	public static final double OPPOSITE_EFFECTIVE_LEVEL_2_MODIFIER = -6;
	public static final double OPPOSITE_EFFECTIVE_LEVEL_3_MODIFIER = -4;
	public static final double OPPOSITE_EFFECTIVE_LEVEL_4_MODIFIER = -2;
	public static final double OPPOSITE_EFFECTIVE_LEVEL_5_MODIFIER = 0;
	public static final double OPPOSITE_EFFECTIVE_LEVEL_6_MODIFIER = 2;
	public static final double OPPOSITE_EFFECTIVE_LEVEL_7_MODIFIER = 4;
	public static final double OPPOSITE_EFFECTIVE_LEVEL_8_MODIFIER = 6;
	public static final double OPPOSITE_EFFECTIVE_LEVEL_9_MODIFIER = 8;
	public static final double OPPOSITE_EFFECTIVE_LEVEL_10_MODIFIER = 10;

	/* receive effectiveness */
	public static final double RECEIVER_POINTS_LOST_IN_RECEPTION_MODIFIER = -1;
	public static final double RECEIVER_MINIMUM_NR_OF_RECEPTIONS = 6;
	public static final double RECEIVER_EFFECTIVE_LEVEL_1 = 10;
	public static final double RECEIVER_EFFECTIVE_LEVEL_2 = 20;
	public static final double RECEIVER_EFFECTIVE_LEVEL_3 = 30;
	public static final double RECEIVER_EFFECTIVE_LEVEL_4 = 40;
	public static final double RECEIVER_EFFECTIVE_LEVEL_5 = 50;
	public static final double RECEIVER_EFFECTIVE_LEVEL_6 = 60;
	public static final double RECEIVER_EFFECTIVE_LEVEL_7 = 70;
	public static final double RECEIVER_EFFECTIVE_LEVEL_8 = 80;
	public static final double RECEIVER_EFFECTIVE_LEVEL_9 = 90;
	public static final double RECEIVER_EFFECTIVE_LEVEL_10 = 100;
	public static final double RECEIVER_EFFECTIVE_LEVEL_1_MODIFIER = -12;
	public static final double RECEIVER_EFFECTIVE_LEVEL_2_MODIFIER = -9;
	public static final double RECEIVER_EFFECTIVE_LEVEL_3_MODIFIER = -6;
	public static final double RECEIVER_EFFECTIVE_LEVEL_4_MODIFIER = -3;
	public static final double RECEIVER_EFFECTIVE_LEVEL_5_MODIFIER = 0;
	public static final double RECEIVER_EFFECTIVE_LEVEL_6_MODIFIER = 3;
	public static final double RECEIVER_EFFECTIVE_LEVEL_7_MODIFIER = 6;
	public static final double RECEIVER_EFFECTIVE_LEVEL_8_MODIFIER = 9;
	public static final double RECEIVER_EFFECTIVE_LEVEL_9_MODIFIER = 12;
	public static final double RECEIVER_EFFECTIVE_LEVEL_10_MODIFIER = 15;

	/* attack effectiveness */
	public static final double BLOCKER_BLOCKED_ATTACKS_MODIFIER = -1;
	public static final double BLOCKER_MINIMUM_ATTACKS_MODIFIER = 6;
	public static final double BLOCKER_EFFECTIVE_LEVEL_1 = 10;
	public static final double BLOCKER_EFFECTIVE_LEVEL_2 = 20;
	public static final double BLOCKER_EFFECTIVE_LEVEL_3 = 30;
	public static final double BLOCKER_EFFECTIVE_LEVEL_4 = 40;
	public static final double BLOCKER_EFFECTIVE_LEVEL_5 = 50;
	public static final double BLOCKER_EFFECTIVE_LEVEL_6 = 60;
	public static final double BLOCKER_EFFECTIVE_LEVEL_7 = 70;
	public static final double BLOCKER_EFFECTIVE_LEVEL_8 = 80;
	public static final double BLOCKER_EFFECTIVE_LEVEL_9 = 90;
	public static final double BLOCKER_EFFECTIVE_LEVEL_10 = 100;
	public static final double BLOCKER_EFFECTIVE_LEVEL_1_MODIFIER = -8;
	public static final double BLOCKER_EFFECTIVE_LEVEL_2_MODIFIER = -6;
	public static final double BLOCKER_EFFECTIVE_LEVEL_3_MODIFIER = -4;
	public static final double BLOCKER_EFFECTIVE_LEVEL_4_MODIFIER = -2;
	public static final double BLOCKER_EFFECTIVE_LEVEL_5_MODIFIER = 0;
	public static final double BLOCKER_EFFECTIVE_LEVEL_6_MODIFIER = 2;
	public static final double BLOCKER_EFFECTIVE_LEVEL_7_MODIFIER = 4;
	public static final double BLOCKER_EFFECTIVE_LEVEL_8_MODIFIER = 6;
	public static final double BLOCKER_EFFECTIVE_LEVEL_9_MODIFIER = 8;
	public static final double BLOCKER_EFFECTIVE_LEVEL_10_MODIFIER = 10;

	public static final double SETTER_TEAM_0_3_MODIFIER = -3;
	public static final double SETTER_TEAM_1_3_MODIFIER = -1;
	public static final double SETTER_TEAM_2_3_MODIFIER = 1;
	public static final double SETTER_TEAM_3_0_MODIFIER = 7;
	public static final double SETTER_TEAM_3_1_MODIFIER = 5;
	public static final double SETTER_TEAM_3_2_MODIFIER = 3;

	/* attack effectiveness */
	public static final double TEAM_EFFECTIVE_LEVEL_1 = 10;
	public static final double TEAM_EFFECTIVE_LEVEL_2 = 20;
	public static final double TEAM_EFFECTIVE_LEVEL_3 = 30;
	public static final double TEAM_EFFECTIVE_LEVEL_4 = 40;
	public static final double TEAM_EFFECTIVE_LEVEL_5 = 50;
	public static final double TEAM_EFFECTIVE_LEVEL_6 = 60;
	public static final double TEAM_EFFECTIVE_LEVEL_7 = 70;
	public static final double TEAM_EFFECTIVE_LEVEL_8 = 80;
	public static final double TEAM_EFFECTIVE_LEVEL_9 = 90;
	public static final double TEAM_EFFECTIVE_LEVEL_10 = 100;

	public static final double TEAM_EFFECTIVE_LEVEL_1_MODIFIER = -9;
	public static final double TEAM_EFFECTIVE_LEVEL_2_MODIFIER = -6;
	public static final double TEAM_EFFECTIVE_LEVEL_3_MODIFIER = -3;
	public static final double TEAM_EFFECTIVE_LEVEL_4_MODIFIER = 0;
	public static final double TEAM_EFFECTIVE_LEVEL_5_MODIFIER = 3;
	public static final double TEAM_EFFECTIVE_LEVEL_6_MODIFIER = 6;
	public static final double TEAM_EFFECTIVE_LEVEL_7_MODIFIER = 9;
	public static final double TEAM_EFFECTIVE_LEVEL_8_MODIFIER = 12;
	public static final double TEAM_EFFECTIVE_LEVEL_9_MODIFIER = 15;
	public static final double TEAM_EFFECTIVE_LEVEL_10_MODIFIER = 18;

	public static final int OPPONENT_TEAM_EFFECTIVE_LEVEL_1 = 10;
	public static final int OPPONENT_TEAM_EFFECTIVE_LEVEL_2 = 20;
	public static final int OPPONENT_TEAM_EFFECTIVE_LEVEL_3 = 30;
	public static final int OPPONENT_TEAM_EFFECTIVE_LEVEL_4 = 40;
	public static final int OPPONENT_TEAM_EFFECTIVE_LEVEL_5 = 50;
	public static final int OPPONENT_TEAM_EFFECTIVE_LEVEL_6 = 60;
	public static final int OPPONENT_TEAM_EFFECTIVE_LEVEL_7 = 70;
	public static final int OPPONENT_TEAM_EFFECTIVE_LEVEL_8 = 80;
	public static final int OPPONENT_TEAM_EFFECTIVE_LEVEL_9 = 90;
	public static final int OPPONENT_TEAM_EFFECTIVE_LEVEL_10 = 100;

	public static final double LIBERO_OPP_TEAM_EFFECITIVE_LEVEL_1_MODIFIER = 25;
	public static final double LIBERO_OPP_TEAM_EFFECITIVE_LEVEL_2_MODIFIER = 20;
	public static final double LIBERO_OPP_TEAM_EFFECITIVE_LEVEL_3_MODIFIER = 15;
	public static final double LIBERO_OPP_TEAM_EFFECITIVE_LEVEL_4_MODIFIER = 10;
	public static final double LIBERO_OPP_TEAM_EFFECITIVE_LEVEL_5_MODIFIER = 5;
	public static final double LIBERO_OPP_TEAM_EFFECITIVE_LEVEL_6_MODIFIER = 0;
	public static final double LIBERO_OPP_TEAM_EFFECITIVE_LEVEL_7_MODIFIER = -5;
	public static final double LIBERO_OPP_TEAM_EFFECITIVE_LEVEL_8_MODIFIER = -10;
	public static final double LIBERO_OPP_TEAM_EFFECITIVE_LEVEL_9_MODIFIER = -15;
	public static final double LIBERO_OPP_TEAM_EFFECITIVE_LEVEL_10_MODIFIER = -20;

	public static final int LIBERO_RECEPTION_EFFECTIVE_LEVEL_1 = 10;
	public static final int LIBERO_RECEPTION_EFFECTIVE_LEVEL_2 = 20;
	public static final int LIBERO_RECEPTION_EFFECTIVE_LEVEL_3 = 30;
	public static final int LIBERO_RECEPTION_EFFECTIVE_LEVEL_4 = 40;
	public static final int LIBERO_RECEPTION_EFFECTIVE_LEVEL_5 = 50;
	public static final int LIBERO_RECEPTION_EFFECTIVE_LEVEL_6 = 60;
	public static final int LIBERO_RECEPTION_EFFECTIVE_LEVEL_7 = 70;
	public static final int LIBERO_RECEPTION_EFFECTIVE_LEVEL_8 = 80;
	public static final int LIBERO_RECEPTION_EFFECTIVE_LEVEL_9 = 90;
	public static final int LIBERO_RECEPTION_EFFECTIVE_LEVEL_10 = 100;

	public static final double LIBERO_RECEPTION_EFFECTIVE_LEVEL_1_MODIFIER = -9;
	public static final double LIBERO_RECEPTION_EFFECTIVE_LEVEL_2_MODIFIER = -6;
	public static final double LIBERO_RECEPTION_EFFECTIVE_LEVEL_3_MODIFIER = -3;
	public static final double LIBERO_RECEPTION_EFFECTIVE_LEVEL_4_MODIFIER = 0;
	public static final double LIBERO_RECEPTION_EFFECTIVE_LEVEL_5_MODIFIER = 3;
	public static final double LIBERO_RECEPTION_EFFECTIVE_LEVEL_6_MODIFIER = 6;
	public static final double LIBERO_RECEPTION_EFFECTIVE_LEVEL_7_MODIFIER = 9;
	public static final double LIBERO_RECEPTION_EFFECTIVE_LEVEL_8_MODIFIER = 12;
	public static final double LIBERO_RECEPTION_EFFECTIVE_LEVEL_9_MODIFIER = 15;
	public static final double LIBERO_RECEPTION_EFFECTIVE_LEVEL_10_MODIFIER = 18;

	public static final double COACH_TEAM_0_3_MODIFIER = -5;
	public static final double COACH_TEAM_1_3_MODIFIER = -2;
	public static final double COACH_TEAM_2_3_MODIFIER = 1;
	public static final double COACH_TEAM_3_0_MODIFIER = 10;
	public static final double COACH_TEAM_3_1_MODIFIER = 7;
	public static final double COACH_TEAM_3_2_MODIFIER = 4;

	public static final double MVP_MODIFIER = 1.5;
}
